﻿using Inventory.API.DTO.WarehousemanagementDTO;
using Inventory.API.Utils;
using Inventory.Domain;
using Inventory.Errorcode;
using MediatR;

namespace Inventory.API.Application.Command.ZonemanagementCommand
{





    public class AddZonemanagementCommand : IRequest<ApiResult>
    {


        /// <summary>
        /// 库区名称
        /// </summary>
        public string Zonename { get; set; }

        /// <summary>
        /// 库存编号
        /// </summary>
        public string Inventorynumber { get; set; }

        /// <summary>
        /// 面积
        /// </summary>
        public int Area { get; set; }

        /// <summary>
        /// 所属仓库
        /// </summary>
        public int Warehousemanagementid { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; }



    }




    public class GetZonemanagementListQueryCommand : IRequest<ApiResult<PagingResult<IList<WarehousemanagementPageDTOS>>>>
    {

        /// <summary>
        /// 页码
        /// </summary>
        public int PageIndex { get; set; }

        /// <summary>
        /// 页大小
        /// </summary>
        public int PageSize { get; set; }

        // /// <summary>
        // /// 库区名称
        // /// </summary>
        public string? Zonename { get; set; }

        // /// <summary>
        // /// 库存编号
        // /// </summary>
        public string? Inventorynumber { get; set; }

        // /// <summary>
        // /// 所属仓库
        // /// </summary>
        public int? Warehousemanagementid { get; set; }


    }




    public class DeleteZonemanagementCommand : IRequest<ApiResult>
    {


        public int Zonemanagementid { get; set; }
    }

    public class GeZonemanagementfoCommand : IRequest<ApiResult<Zonemanagement>>
    {
        public int Zonemanagementid { get; set; }
    }


    public class UpdateZonemanagementCommand : IRequest<ApiResult>
    {
        public int Zonemanagementid { get; set; }

        /// <summary>
        /// 库区名称
        /// </summary>
        public string Zonename { get; set; }

        /// <summary>
        /// 库存编号
        /// </summary>
        public string Inventorynumber { get; set; }

        /// <summary>
        /// 面积
        /// </summary>
        public int Area { get; set; }

        /// <summary>
        /// 所属仓库
        /// </summary>
        public int Warehousemanagementid { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; }
    }
}
